home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / contrib / decalign / decalign.sty < prev   
Text File  |  1991-08-03  |  3KB  |  77 lines

  1. \typeout{Document Style option 'decalign', Released 1 October 1987}
  2. \def\dsep{}  % This is necessary for some unknown reason.
  3. \def\@testpach#1{\@chclass \ifnum \@lastchclass=\tw@ 4 \else
  4.     \ifnum \@lastchclass=3 5 \else
  5.      \z@ \if #1c\@chnum \z@ \else
  6.                               \if #1l\@chnum \@ne \else
  7.                               \if #1r\@chnum \tw@ \else
  8.           \@chclass \if #1|\@ne \else
  9.                     \if #1@\tw@ \else
  10.                     \if #1p3 \else
  11.                     \if #1d7 \else
  12.                     \ifnum \@lastchclass=7 8 \else \z@ \@preamerr 0\fi
  13.   \fi  \fi  \fi  \fi  \fi  \fi  \fi  \fi
  14. \fi}
  15. %  Additions to these macros handle the extra classes.
  16. \def\@mkpream#1{\@firstamptrue\@lastchclass6
  17. \def\@preamble{}\def\protect{\noexpand\protect\noexpand}\let\@sharp\relax
  18. \let\@startpbox\relax\let\@endpbox\relax
  19. \@expast{#1}\expandafter\@tfor \expandafter
  20.   \@nextchar \expandafter:\expandafter=\@tempa\do{\@testpach\@nextchar
  21.   \ifnum \@lastchclass=7 \ifnum \@chclass=8 \else\@classviii{.}\fi\fi
  22.   \ifcase \@chclass \@classz \or \@classi \or \@classii \or \@classiii
  23.     \or \@classiv \or\@classv \or \or\@classvii \or\@classviii{\@nextchar}%
  24.     \fi\@lastchclass\@chclass}%
  25. \ifcase \@lastchclass \@acol
  26.     \or \or \@preamerr \@ne\or \@preamerr \tw@\or \or \@acol \fi}
  27. \def\@tabular{\leavevmode \hbox \bgroup $\let\@acol\@tabacol
  28.    \let\@classz\@tabclassz
  29.    \let\@classiv\@tabclassiv
  30.    \let\@classviii\@tabclassviii
  31.    \let\\\@tabularcr\@tabarray}
  32. \def\array{\let\@acol\@arrayacol \let\@classz\@arrayclassz
  33.    \let\@classiv\@arrayclassiv
  34.    \let\@classviii\@arrayclassviii
  35.    \let\\\@arraycr\def\@halignto{}\@tabarray}
  36. \def\@arrayclassz{\ifcase \@lastchclass \@acolampacol \or \@ampacol \or
  37.    \or \or \@addamp \or
  38.    \@acolampacol \or \@firstampfalse \@acol \or
  39.    \@acolampacol \or \@acolampacol
  40.    \fi
  41. \edef\@preamble{\@preamble
  42.   \ifcase \@chnum
  43.      \hfil$\relax\@sharp$\hfil \or $\relax\@sharp$\hfil
  44.     \or \hfil$\relax\@sharp$\fi}}
  45. \def\@tabclassz{\ifcase \@lastchclass \@acolampacol \or \@ampacol \or
  46.    \or \or \@addamp \or
  47.    \@acolampacol \or \@firstampfalse \@acol \or
  48.    \@acolampacol \or \@acolampacol
  49.    \fi
  50. \edef\@preamble{\@preamble
  51.   \ifcase \@chnum
  52.      \hfil\ignorespaces\@sharp\unskip\hfil
  53.      \or \ignorespaces\@sharp\unskip\hfil
  54.      \or \hfil\hskip\z@ \ignorespaces\@sharp\unskip\fi}}
  55. \def\@classi{\ifcase \@lastchclass \@acol \@arrayrule \or
  56.    \@addtopreamble{\hskip \doublerulesep}\@arrayrule\or
  57.    \or \or \@arrayrule \or
  58.    \@acol \@arrayrule \or \@arrayrule \or
  59.    \@acol \@arrayrule \or \@acol \@arrayrule
  60.    \fi}
  61. \def\@classiii{\ifcase \@lastchclass \@acolampacol \or
  62.    \@addamp\@acol \or
  63.    \or \or \@addamp \or
  64.    \@acolampacol \or \@ampacol \or
  65.    \@acolampacol \or \@ampacol
  66.    \fi}
  67. \def\@classvii{\ifcase \@lastchclass \@acolampacol \or
  68.    \@addamp\@acol \or
  69.    \or \or \@addamp \or
  70.    \@acolampacol \or \@ampacol \or
  71.    \@acolampacol \or \@acolampacol \fi}
  72. \def\@tabclassviii#1{\@addtopreamble{\catcode`#1=4 \hfil\ignorespaces\@sharp
  73.    \unskip\@sharp\unskip\hfil}}
  74. \def\@arrayclassviii#1{\@addtopreamble{\catcode`#1=4 \hfil$\relax\@sharp$&
  75.    $\relax.\@sharp$\hfil}}
  76. %%%---------------End o' example file.
  77.